package com.zjdiepu.www.security.sign.lang;

/**
 * 类描述:字符串求hash值建议算法 <br/>     
 * 项目名称:zjdiepu-client <br/> 
 * 类名称:HashCodeProvider <br/>     
 * 创建人:xiongxiaotun <br/> 
 * 创建时间:2017年8月15日 下午3:50:20  <br/>   
 * 修改人:xiongxiaotun <br/> 
 * 修改时间: 2017年8月15日 下午3:50:20   <br/>  
 * 修改备注:   <br/> 
 * @version V1.0   <br/>
 */
public class HashCodeProvider {

	private final static int PRIME = 0x7fffffff;
	/**
	 * @author xiongxiaotun <br/>
	 * @Title StringHashCode  <br/>
	 * @Description 获取hashCode <br/>
	 * @param key
	 * @return
	 * @version V1.0  <br/>
	 */
    public static int StringHashCode(String key) {
        int hash, i;
        for (hash = key.length(), i = 0; i < key.length(); ++i){
            hash = (hash << 4) ^ (hash >> 28) ^ key.charAt(i);
        }
        return (hash % PRIME);
    }
}
